package com.yipao.db.dao;

import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.yipao.db.domain.YipaoStorage;
import com.yipao.db.domain.YipaoStorageExample;

/**
 * @author tianhao
 */
public interface StorageMapper {

    long countByExample(YipaoStorageExample example);


    int deleteByExample(YipaoStorageExample example);


    int deleteByPrimaryKey(Integer id);


    int insert(YipaoStorage record);


    int insertSelective(YipaoStorage record);


    YipaoStorage selectOneByExample(YipaoStorageExample example);


    YipaoStorage selectOneByExampleSelective(@Param("example") YipaoStorageExample example, @Param("selective") YipaoStorage.Column ... selective);


    List<YipaoStorage> selectByExampleSelective(@Param("example") YipaoStorageExample example, @Param("selective") YipaoStorage.Column ... selective);


    List<YipaoStorage> selectByExample(YipaoStorageExample example);


    YipaoStorage selectByPrimaryKeySelective(@Param("id") Integer id, @Param("selective") YipaoStorage.Column ... selective);


    YipaoStorage selectByPrimaryKey(Integer id);


    YipaoStorage selectByPrimaryKeyWithLogicalDelete(@Param("id") Integer id, @Param("andLogicalDeleted") boolean andLogicalDeleted);


    int updateByExampleSelective(@Param("record") YipaoStorage record, @Param("example") YipaoStorageExample example);


    int updateByExample(@Param("record") YipaoStorage record, @Param("example") YipaoStorageExample example);


    int updateByPrimaryKeySelective(YipaoStorage record);


    int updateByPrimaryKey(YipaoStorage record);


    int logicalDeleteByExample(@Param("example") YipaoStorageExample example);


    int logicalDeleteByPrimaryKey(Integer id);
}
